home *** CD-ROM | disk | FTP | other *** search
- #ifndef plugin_chatwindowH
- #define plugin_chatwindowH
-
- #include <windows.h>
-
- #include "plugin_struct.h"
- #include "plugin_contactlist_defs.h"
-
- typedef struct {
-
- int structSize; //wielko£µ struktury w bajtach
-
- HWND Handle; //uchwyt okienka
- ContactDef Contact; //Kontakt z ktorym przeprowadzana jest rozmowa, tudzie┐ adres pokoju konferencyjnego
-
- char *WindowCaption; //Tytul okienka
- TlenSingleImageDef WindowIconSmall; //Ikonka okienka - mala
- TlenSingleImageDef WindowIconBig; //Ikonka okienka - duza (nie obslugiwana jeszcze)
-
- int Flags;
- TLENFUNCTION CallBackFunc; //Do przechwytywania zdarzen przez tworce okienka
-
- char *ID; //Identyfikator chata/konferencji (od wersji API 0.1.6.1)
- char *ShortCaption; //krotki tytul, umieszczany np na zakladce w oknie rozmowy
- // od API 0.1.8.3
-
- } TlenChatWindowInfoDef;
-
- #define CHATWINDOW_SHOWFLAG_EMOTICONS 0x0001
- #define CHATWINDOW_SHOWFLAG_PARTNER_INITIATED 0x0002 //rozmowe inicjuje rozmowca
- #define CHATWINDOW_SHOWFLAG_NOSOUND 0x0004
- #define CHATWINDOW_SHOWFLAG_ALERTICON 0x0008
- #define CHATWINDOW_SHOWFLAG_TYPINGICON 0x0010
- #define CHATWINDOW_SHOWFLAG_VOICEICON 0x0020
- #define CHATWINDOW_SHOWFLAG_VIDEOICON 0x0040
- #define CHATWINDOW_SHOWFLAG_FILEICON 0x0080
-
- #define CHATWINDOW_SHOWFLAG_CONFERENCE 0x0100 //pokazuje okno w trybie konferencji
- #define CHATWINDOW_SHOWFLAG_NOSHOW 0x0200 // nie pokazuj
- // okna
-
- //WPARAM dla CallBackFunc
- #define CHATWINDOW_SHOWACTION_DESTROYED 1
-
- //-------------------------------------------------------------------------------------
-
- //Zdarzenia - hook pod ktory mozna sie podczepic i przechwytywac zdarzenia w okienkach rozmowy, takze wplywac na wykonanie funkcji
- #define TLEN_CHATWINDOW_EVENT "Tlen/ChatWindow/Event"
-
- //WPARAM:
- typedef struct {
-
- int structSize; //wielko£µ struktury w bajtach
-
- TlenChatWindowInfoDef *WindowInfo;
- int EventID;
-
- } TlenChatWindowEventDef;
-
- #define TLEN_CHATWINDOW_EVENT_AFTERCREATED 1
- #define TLEN_CHATWINDOW_EVENT_BEFOREDESTROYED 2
- #define TLEN_CHATWINDOW_EVENT_AFTERCLOSED 3
- #define TLEN_CHATWINDOW_EVENT_AFTEROPENED 4
- #define TLEN_CHATWINDOW_EVENT_BEFOREFLASHBEGIN 5
- #define TLEN_CHATWINDOW_EVENT_AFTERFLASHEND 6
-
- // zdarzenia zwiazane z zakladkami w oknie rozmowy
- #define TLEN_CHATWINDOW_EVENT_TAB_AFTERCREATED 7
- #define TLEN_CHATWINDOW_EVENT_TAB_BEFOREDESTROYED 8
- #define TLEN_CHATWINDOW_EVENT_TAB_AFTERCLOSED 9
- #define TLEN_CHATWINDOW_EVENT_TAB_AFTEROPENED 10
- #define TLEN_CHATWINDOW_EVENT_TAB_BEFOREFLASHBEGIN 11
- #define TLEN_CHATWINDOW_EVENT_TAB_AFTERFLASHEND 12
-
- /*
- #define TLEN_CHATWINDOW_EVENT_BEFOREMSGSHOW 7
- #define TLEN_CHATWINDOW_EVENT_BEFORESETPARAM 8
- #define TLEN_CHATWINDOW_EVENT_BEFORESHOWALERT 9
- #define TLEN_CHATWINDOW_EVENT_BEFORESHOWTYPING 10
- #define TLEN_CHATWINDOW_EVENT_BEFORESENDTEXT 11
- #define TLEN_CHATWINDOW_EVENT_AFTERTEXTCHANGED 12
- #define TLEN_CHATWINDOW_EVENT_AFTERKEYDOWN 13
- */
-
-
- //Funkcje
-
- // zwraca 1 jesli uzytkownik jest ignorowany w pokoju konferencyjnym
- // 0 jesli nie
- // w wParam przekazujemy id uzytkownika
- #define TLEN_CHATWINDOW_CONF_USER_IGNORED "Tlen/ChatWindow/ConfUserIgnored"
-
- #define TLEN_CHATWINDOW_GET_HANDLE "Tlen/ChatWindow/GetHandle"
-
-
- #define TLEN_CHATWINDOW_SHOW "Tlen/ChatWindow/Show"
-
- //WPARAM: TlenChatWindowInfoDef *
-
- #define TLEN_CHATWINDOW_SHOWMESSAGE "Tlen/ChatWindow/ShowMessage"
-
- //WPARAM: TlenChatWindowInfoDef * (w nim ContactDef istotne)
-
- //LPARAM:
- typedef struct {
-
- int structSize; //wielko£µ struktury w bajtach
-
- char *Name;
- int Size;
- int Color;
- int Flags;
-
- } FontStructDef;
-
- #define TLEN_FONT_STYLE_BOLD 0x0001
- #define TLEN_FONT_STYLE_ITALIC 0x0002
- #define TLEN_FONT_STYLE_UNDERLINE 0x0004
-
- #define TLEN_FONT_STYLE_APPLY_NAME 0x00010000
- #define TLEN_FONT_STYLE_APPLY_SIZE 0x00020000
- #define TLEN_FONT_STYLE_APPLY_COLOR 0x00040000
- #define TLEN_FONT_STYLE_APPLY_BOLD 0x00080000
- #define TLEN_FONT_STYLE_APPLY_ITALIC 0x00100000
- #define TLEN_FONT_STYLE_APPLY_UNDERLINE 0x00200000
- #define TLEN_FONT_STYLE_APPLY_ALL 0x00FF0000
-
- typedef struct {
-
- int structSize; //wielko£µ struktury w bajtach
-
- char *UserID;
- char *Name;
-
- unsigned int TimeStamp; //jesli ponizsze dwa pola sa niewypelnione, to tlen sam sformatuje date i czas
-
- char *Time;
- char *Date;
-
- char *Message;
-
- int Flags;
-
- } TlenChatWindowMessageOldDef;
-
- typedef struct {
-
- int structSize; //wielko£µ struktury w bajtach
-
- char *UserID;
- char *Name;
-
- unsigned int TimeStamp; //jesli ponizsze dwa pola sa niewypelnione, to tlen sam sformatuje date i czas
-
- char *Time;
- char *Date;
-
- char *Message;
-
- int Flags;
-
- //rozszerzona wiadomosc
- FontStructDef UserIDFont;
- FontStructDef NameFont;
- FontStructDef DateFont;
- FontStructDef TimeFont;
- FontStructDef MessageFont;
-
- } TlenChatWindowMessageDef;
-
- #define CHATWINDOW_MESSAGEFLAG_RECEIVED 0x0001
- #define CHATWINDOW_MESSAGEFLAG_SENT 0x0002
- #define CHATWINDOW_MESSAGEFLAG_OFFLINE 0x0004
- #define CHATWINDOW_MESSAGEFLAG_SYSTEMMESSAGE 0x0008
-
- #define CHATWINDOW_MESSAGEFLAG_OVERRIDESHOWEMOS 0x0010
- #define CHATWINDOW_MESSAGEFLAG_OVERRIDENOEMOS 0x0020
- #define CHATWINDOW_MESSAGEFLAG_HTMLMESSAGE 0x0040
- #define CHATWINDOW_MESSAGEFLAG_HTMLBLOCK 0x0080
-
- #define CHATWINDOW_MESSAGEFLAG_NOSOUND 0x0100
- #define CHATWINDOW_MESSAGEFLAG_SHOWTIMESTAMP 0x0200
- #define CHATWINDOW_MESSAGEFLAG_TEXTFORMATENABLED 0x0400
- #define CHATWINDOW_MESSAGEFLAG_SCROLLLOCALIMAGE 0x0800
-
- #define CHATWINDOW_MESSAGEFLAG_USEFONT_USERID 0x01000
- #define CHATWINDOW_MESSAGEFLAG_USEFONT_NAME 0x02000
- #define CHATWINDOW_MESSAGEFLAG_USEFONT_DATE 0x04000
- #define CHATWINDOW_MESSAGEFLAG_USEFONT_TIME 0x08000
- #define CHATWINDOW_MESSAGEFLAG_USEFONT_MESSAGE 0x10000
- #define CHATWINDOW_MESSAGEFLAG_PAGE_ACTIVATE 0x20000 // przelacza
- // aktywna zakladke gdzie ma pojawic sie wiadomosc
-
- #define TLEN_CHATWINDOW_SETPARAM "Tlen/ChatWindow/SetParam"
-
- //WPARAM: TlenChatWindowInfoDef *
-
- //LPARAM:
- // zmiana tytulu okna
- #define CHATWINDOW_SETPARAM_CAPTION 0x0001
- // zmiana ikony okna
- #define CHATWINDOW_SETPARAM_ICON 0x0002
- // zmiana danych kontaktu
- #define CHATWINDOW_SETPARAM_CONTACT 0x0004
- // zmiana flag CHATWINDOW_SHOWFLAG_*
- #define CHATWINDOW_SETPARAM_FLAGS 0x0008
- // zmiana tytulu zakladki
- #define CHATWINDOW_SETPARAM_SHORT_CAPTION 0x0010
-
- #define TLEN_CHATWINDOW_SHOWTYPINGNOTIFICATION "Tlen/ChatWindow/ShowTypingNotification"
- //WPARAM: TlenChatWindowInfoDef *
- //LPARAM: 1 - pokazuje, 2 - chowa
-
- #define TLEN_CHATWINDOW_ALERTUSER "Tlen/ChatWindow/AlertUser"
- //WPARAM: TlenChatWindowInfoDef *
- //LPARAM: 1
-
- #endif
-